μ μ±μ½λ νμ§μμ μ μ λΆμμ μΈκ³λ₯Ό νννμΈμ. μ€ν μμ΄ μ μ± μννΈμ¨μ΄λ₯Ό μλ³νκΈ° μν κΈ°λ², λꡬ λ° λͺ¨λ² μ¬λ‘λ₯Ό μμ보μΈμ. μ¬μ΄λ² 보μ μ λ¬Έκ° λ° λ§€λμλ₯Ό μν ν¬κ΄μ μΈ κ°μ΄λμ λλ€.
μ μ±μ½λ νμ§: μ μ λΆμ κΈ°λ² μ¬μΈ΅ λΆμ
μ μ±μ½λ(Malware)λ κ°μΈ, μ‘°μ§ λ° μ λΆμ μ¬κ°ν μνμ μ κΈ°ν©λλ€. μ€μ λ°μ΄ν°λ₯Ό μ κ·Έλ λμ¬μ¨μ΄λΆν° λ―Όκ°ν μ 보λ₯Ό νμΉλ μ€νμ΄μ¨μ΄κΉμ§, μ μ±μ½λμ μν₯μ νκ΄΄μ μΌ μ μμ΅λλ€. ν¨κ³Όμ μΈ μ μ±μ½λ νμ§λ λμ§νΈ μμ°μ 보νΈνκ³ μμ ν μ¨λΌμΈ νκ²½μ μ μ§νλ λ° λ§€μ° μ€μν©λλ€. μ μ±μ½λ νμ§μ μ£Όμ μ κ·Ό λ°©μ μ€ νλλ μ μ λΆμμΌλ‘, νλ‘κ·Έλ¨μ μ€ννμ§ μκ³ μ½λ λλ ꡬ쑰λ₯Ό κ²μ¬νλ κΈ°λ²μ λλ€. μ΄ κΈ°μ¬μμλ λ€μν κΈ°λ², λꡬ, μ₯μ λ° μ ν μ¬νμ νꡬνμ¬ μ μ λΆμμ 볡μ‘μ±μ μμΈν μ΄ν΄λ΄ λλ€.
μ μ λΆμ μ΄ν΄
μ μ±μ½λ νμ§ λ§₯λ½μμ μ μ λΆμμ νλ‘κ·Έλ¨μ μ€ννμ§ μκ³ μ½λ λλ ꡬ쑰λ₯Ό κ²μ¬νλ νλ‘μΈμ€λ₯Ό μλ―Έν©λλ€. μ΄ μ κ·Ό λ°©μμ ν΅ν΄ λΆμκ°λ μ μ±μ½λκ° μμμ μΌμΌν€κΈ° μ μ μ μ¬μ μΌλ‘ μ μμ μΈ νΉμ± λ° λμμ μλ³ν μ μμ΅λλ€. μ΄λ μμ¬μ€λ¬μ΄ μννΈμ¨μ΄μ λν μ‘°κΈ° κ²½κ³ λ₯Ό μ 곡ν μ μλ μ¬μ μλ°©μ λ°©μ΄ λ©μ»€λμ¦μ λλ€.
λμμ κ΄μ°°νκΈ° μν΄ μ μ΄λ νκ²½(μ: μλλ°μ€)μμ νλ‘κ·Έλ¨μ μ€ννλ λμ λΆμκ³Ό λ¬λ¦¬ μ μ λΆμμ νλ‘κ·Έλ¨μ κ³ μ ν μμ±μ μ€μ μ λ‘λλ€. μ¬κΈ°μλ μ½λ μ체(μμ€ μ½λ λλ λμ€μ΄μ λΈλ λͺ λ Ήμ΄), λ©νλ°μ΄ν°(ν€λ, νμΌ ν¬κΈ°, νμμ€ν¬ν) λ° κ΅¬μ‘°μ μμ(μ μ΄ νλ¦ κ·Έλν, λ°μ΄ν° μ’ μμ±)μ κ°μ μΈ‘λ©΄μ΄ ν¬ν¨λ©λλ€. μ΄λ¬ν κΈ°λ₯μ λΆμν¨μΌλ‘μ¨ λΆμκ°λ νλ‘κ·Έλ¨μ λͺ©μ , κΈ°λ₯ λ° μ μ¬μ μΈ μ μ± μλμ λν ν΅μ°°λ ₯μ μ»μ μ μμ΅λλ€.
μ μ λΆμ κΈ°λ²μ νλ«νΌμ΄λ μ΄μ 체μ μ κ΄κ³μμ΄ λͺ¨λ μννΈμ¨μ΄μ μ μ©ν μ μκΈ° λλ¬Έμ νΉν μ μ©ν©λλ€. λν λ°νμ νκ²½μ μ€μ νκ³ μ μ§ κ΄λ¦¬νλ μ€λ²ν€λκ° νμνμ§ μμΌλ―λ‘ λμ λΆμλ³΄λ€ λΉ λ₯Έ κ²½μ°κ° λ§μ΅λλ€. λν μ μ λΆμμ νλ‘κ·Έλ¨μ λ΄λΆ μλμ λν μμΈν μ 보λ₯Ό μ 곡ν μ μμΌλ©°, μ΄λ 리λ²μ€ μμ§λμ΄λ§ λ° μ¬κ³ λμ λ Έλ ₯μ λ§€μ° μ€μν μ μμ΅λλ€.
μ£Όμ μ μ λΆμ κΈ°λ²
μ μ±μ½λ νμ§λ₯Ό μν μ μ λΆμμλ μ¬λ¬ κ°μ§ κΈ°λ²μ΄ μΌλ°μ μΌλ‘ μ¬μ©λ©λλ€. κ° κΈ°λ²μ νλ‘κ·Έλ¨μ νΉμ±μ λν κ³ μ ν ν΅μ°°λ ₯μ μ 곡νλ©° μ¬λ¬ κΈ°λ²μ κ²°ν©νλ©΄ κ°μ₯ ν¬κ΄μ μΈ κ²°κ³Όλ₯Ό μ»μ μ μμ΅λλ€.
1. μ½λ λμ€μ΄μ λΈ λ° λμ»΄νμΌ
μ½λ λμ€μ΄μ λΈμ μ»΄ν¨ν° νλ‘μΈμκ° μ€ννλ μ μμ€ λͺ λ Ήμ΄μΈ κΈ°κ³ μ½λλ₯Ό μ΄μ λΈλ¦¬ μ½λλ‘ λ³ννλ νλ‘μΈμ€μ λλ€. μ΄μ λΈλ¦¬ μ½λλ κΈ°κ³ μ½λλ₯Ό μ¬λμ΄ μ½μ μ μλ ννλ‘ νννμ¬ νλ‘κ·Έλ¨μ κΈ°λ³Έ μμ μ λ μ½κ² μ΄ν΄ν μ μλλ‘ ν©λλ€. λμ€μ΄μ λΈμ νλ‘κ·Έλ¨μ λͺ λ Ήμ΄λ₯Ό λͺ ννκ² λ³Ό μ μκΈ° λλ¬Έμ μ μ λΆμμ 첫 λ²μ§Έ λ¨κ³μΈ κ²½μ°κ° λ§μ΅λλ€.
μ½λ λμ»΄νμΌμ μ΄μ λΈλ¦¬ μ½λ λλ κΈ°κ³ μ½λλ₯Ό C λλ C++μ κ°μ κ³ κΈ μΈμ΄λ‘ λ³ννλ €λ μλλ₯Ό ν΅ν΄ ν λ¨κ³ λ λμκ°λλ€. λμ»΄νμΌμ λμ€μ΄μ λΈλ³΄λ€ 볡μ‘νκ³ μλ μμ€ μ½λλ₯Ό μλ²½νκ² μ¬κ΅¬μ±νμ§λ μμ§λ§, νΉν μ΄μ λΈλ¦¬ μΈμ΄ μ λ¬Έκ°κ° μλ λΆμκ°μκ²λ νλ‘κ·Έλ¨ λ Όλ¦¬λ₯Ό λ μ μ΄ν΄ν μ μλλ‘ ννν μ μμ΅λλ€. IDA Pro λ° Ghidraμ κ°μ λꡬλ μΌλ°μ μΌλ‘ λμ€μ΄μ λΈ λ° λμ»΄νμΌμ μ¬μ©λ©λλ€.
μ: μμ¬μ€λ¬μ΄ νλ‘κ·Έλ¨μ λμ€μ΄μ λΈλ μ½λ μ€λν«μ λΆμνλ©΄ λ€λ₯Έ νλ‘κ·Έλ¨μ μμνκΈ° μν `CreateProcess` λλ Windows λ μ§μ€νΈλ¦¬λ₯Ό μμ νκΈ° μν `RegCreateKeyEx`μ κ°μ΄ μ μμ μΈ νλμΌλ‘ μλ €μ§ μμ€ν APIμ λν νΈμΆμ΄ λνλ μ μμ΅λλ€. μ΄λ κ² νλ©΄ μν μ νΈκ° λ°μνκ³ μΆκ° μ‘°μ¬κ° νμν©λλ€.
2. λ¬Έμμ΄ λΆμ
λ¬Έμμ΄ λΆμμ νλ‘κ·Έλ¨ μ½λ λ΄μ ν¬ν¨λ λ¬Έμμ΄(ν μ€νΈ λ°μ΄ν°)μ κ²μ¬νλ κ²μ ν¬ν¨ν©λλ€. μ μ±μ½λ μμ±μλ μ’ μ’ λ€νΈμν¬ μ£Όμ(URL, IP μ£Όμ), νμΌ κ²½λ‘, λ μ§μ€νΈλ¦¬ ν€, μ€λ₯ λ©μμ§ λ° μνΈν ν€μ κ°μ νλ‘κ·Έλ¨μ κΈ°λ₯μ λν λ¨μλ₯Ό μ 곡νλ λ¬Έμμ΄μ ν¬ν¨ν©λλ€. μ΄λ¬ν λ¬Έμμ΄μ μλ³ν¨μΌλ‘μ¨ λΆμκ°λ μ’ μ’ μ μ±μ½λμ λμμ λν μ€μν ν΅μ°°λ ₯μ μ»μ μ μμ΅λλ€.
λ¬Έμμ΄ λΆμμ κ°λ¨ν ν μ€νΈ νΈμ§κΈ° λλ μ λ¬Έ λꡬλ₯Ό μ¬μ©νμ¬ μνν μ μμ΅λλ€. λΆμκ°λ μ’ μ’ λ¬Έμμ΄ λ΄μμ νΉμ ν€μλ λλ ν¨ν΄μ κ²μνμ¬ μ μ¬μ μΈ μΉ¨ν΄ μ§ν(IOC)λ₯Ό μλ³ν©λλ€. μλ₯Ό λ€μ΄ "password" λλ "encryption"μ λν κ²μμ μ€μν μ 보λ μμ¬μ€λ¬μ΄ νλμ λνλΌ μ μμ΅λλ€.
μ: λμ¬μ¨μ΄ μνμ λ¬Έμμ΄ λΆμμ λͺ λ Ή λ° μ μ΄(C&C) μλ²μ ν΅μ νλ λ° μ¬μ©λλ νλ μ½λ©λ URL λλ μ¬μ©μ λ°μ΄ν°λ₯Ό μνΈννλ λ° μ¬μ©λλ νμΌ κ²½λ‘λ₯Ό μ°Ύμ μ μμ΅λλ€. μ΄ μ 보λ C&C μλ²λ‘μ λ€νΈμν¬ νΈλν½μ μ°¨λ¨νκ±°λ λμ¬μ¨μ΄μ μν₯μ λ°λ νμΌμ μλ³νλ λ° μ¬μ©ν μ μμ΅λλ€.
3. μ μ΄ νλ¦ κ·Έλν(CFG) λΆμ
μ μ΄ νλ¦ κ·Έλν(CFG) λΆμμ νλ‘κ·Έλ¨ λ΄μ μ€ν κ²½λ‘λ₯Ό μκ°μ μΌλ‘ λνλ΄λ κΈ°λ²μ λλ€. CFGλ κ° λ Έλκ° μ½λμ κΈ°λ³Έ λΈλ‘(μμ°¨μ μΌλ‘ μ€νλλ λͺ λ Ήμ΄ μνμ€)μ λνλ΄κ³ κ° μμ§κ° ν κΈ°λ³Έ λΈλ‘μμ λ€λ₯Έ κΈ°λ³Έ λΈλ‘μΌλ‘μ κ°λ₯ν μ νμ λνλ΄λ λ°©ν₯ κ·Έλνμ λλ€. CFGλ₯Ό λΆμνλ©΄ μ μμ μΈ λμμ λνλΌ μ μλ 루ν, 쑰건 λΆκΈ° λ° ν¨μ νΈμΆκ³Ό κ°μ μμ¬μ€λ¬μ΄ μ½λ ν¨ν΄μ μλ³νλ λ° λμμ΄ λ μ μμ΅λλ€.
λΆμκ°λ CFGλ₯Ό μ¬μ©νμ¬ νλ‘κ·Έλ¨μ μ 체 ꡬ쑰λ₯Ό μ΄ν΄νκ³ μ μμ μΌ κ°λ₯μ±μ΄ μλ μ½λ μΉμ μ μλ³ν μ μμ΅λλ€. μλ₯Ό λ€μ΄ 볡μ‘νκ±°λ λΉμ μμ μΈ μ μ΄ νλ¦ ν¨ν΄μ λλ ν κΈ°λ² λλ μ μ± λ Όλ¦¬μ μ‘΄μ¬λ₯Ό μμν μ μμ΅λλ€. IDA Pro λ° Binary Ninjaμ κ°μ λꡬλ CFGλ₯Ό μμ±ν μ μμ΅λλ€.
μ: μ μ±μ½λ μνμ CFGλ νλ‘κ·Έλ¨μ λΆμνκΈ° μ΄λ ΅κ² μ€κ³λ μ¬νκ² μ€μ²©λ 쑰건문 λλ 루νμ μ‘΄μ¬λ₯Ό λνλΌ μ μμ΅λλ€. λν CFGλ νΉμ μ μ± νλμ΄ λ°μνλ μμΉλ₯Ό λνλ΄λ λ€λ₯Έ μ½λ μΉμ κ°μ μνΈ μμ©μ κ°μ‘° νμν μ μμ΅λλ€. μ΄ μ 보λ λ°νμ μ μ½λκ° μλνλ λ°©μμ λν ν΅μ°°λ ₯μ μ 곡ν©λλ€.
4. API νΈμΆ λΆμ
API νΈμΆ λΆμμ νλ‘κ·Έλ¨μμ μ΄λ£¨μ΄μ§ μμ© νλ‘κ·Έλλ° μΈν°νμ΄μ€(API) νΈμΆμ μλ³νκ³ λΆμνλ λ° μ€μ μ λ‘λλ€. APIλ νλ‘κ·Έλ¨μ΄ μ΄μ 체μ λ° κΈ°ν μννΈμ¨μ΄ κ΅¬μ± μμμ μνΈ μμ©ν μ μλλ‘ νλ ν¨μ λ° νλ‘μμ μ§ν©μ λλ€. νλ‘κ·Έλ¨μμ μ΄λ£¨μ΄μ§ API νΈμΆμ κ²μ¬ν¨μΌλ‘μ¨ λΆμκ°λ μλλ κΈ°λ₯κ³Ό μ μ¬μ μΈ μ μ± λμμ λν ν΅μ°°λ ₯μ μ»μ μ μμ΅λλ€.
μ μ±μ½λλ μ’ μ’ νΉμ APIλ₯Ό μ¬μ©νμ¬ νμΌ μ‘°μ, λ€νΈμν¬ ν΅μ , μμ€ν μμ λ° νλ‘μΈμ€ μμ±κ³Ό κ°μ μ μ± νλμ μνν©λλ€. μ΄λ¬ν API νΈμΆμ μλ³νκ³ λΆμν¨μΌλ‘μ¨ λΆμκ°λ νλ‘κ·Έλ¨μ΄ μμ¬μ€λ¬μ΄ λμμ 보μ΄λμ§ μ¬λΆλ₯Ό νμΈν μ μμ΅λλ€. λꡬλ₯Ό μ¬μ©νμ¬ μΆκ° λΆμμ μν΄ API νΈμΆμ μΆμΆνκ³ λΆλ₯ν μ μμ΅λλ€. μλ₯Ό λ€μ΄ νλ‘κ·Έλ¨μ μ’ μ’ νμΌ μ‘°μμ μν΄ `CreateFile`, `ReadFile`, `WriteFile` λ° `DeleteFile`κ³Ό κ°μ APIλ₯Ό νμ©νκ³ λ€νΈμν¬ ν΅μ μ μν΄ `connect`, `send` λ° `recv`μ κ°μ λ€νΈμνΉ APIλ₯Ό νμ©ν©λλ€.
μ: `InternetConnect`, `HttpOpenRequest` λ° `HttpSendRequest`μ λν νΈμΆμ μμ£Ό μννλ νλ‘κ·Έλ¨μ μ격 μλ²μ ν΅μ νλ €κ³ μλν μ μμΌλ©°, μ΄λ λ°μ΄ν° μ μΆ λλ λͺ λ Ή λ° μ μ΄ ν΅μ κ³Ό κ°μ μ μ± νλμ λνλΌ μ μμ΅λλ€. μ΄λ¬ν API νΈμΆμ μ λ¬λ λ§€κ° λ³μ(μ: μ μ‘λλ URL λ° λ°μ΄ν°)λ₯Ό κ²μ¬νλ©΄ ν¨μ¬ λ μμΈν μ 보λ₯Ό μ»μ μ μμ΅λλ€.
5. ν¨μ»€ λ° λλ ν νμ§
ν¨μ»€ λ° λλ ν κΈ°λ²μ μ μ±μ½λ μμ±μκ° μ½λλ₯Ό λΆμνκΈ° μ΄λ ΅κ² λ§λ€κ³ νμ§λ₯Ό ννΌνκΈ° μν΄ μμ£Ό μ¬μ©ν©λλ€. ν¨μ»€λ νλ‘κ·Έλ¨μ μ½λλ₯Ό μμΆνκ±°λ μνΈννλ λ°λ©΄, λλ ν κΈ°λ²μ λμμ λ³κ²½νμ§ μκ³ μ΄ν΄νκΈ° μ΄λ ΅κ² λ§λ€κΈ° μν΄ μ½λλ₯Ό μμ ν©λλ€. μ μ λΆμ λꡬ λ° κΈ°λ²μ μ¬μ©νμ¬ ν¨μ»€ λ° λλ νμ μ‘΄μ¬λ₯Ό νμ§ν μ μμ΅λλ€.
ν¨μ»€λ μΌλ°μ μΌλ‘ μ€ν κ°λ₯ν μ½λλ₯Ό μμΆνμ¬ λ μκ³ λΆμνκΈ° μ΄λ ΅κ² λ§λλλ€. λλ ν κΈ°λ²μλ μ½λ μ€ν¬λ¨λΈλ§, μ μ΄ νλ¦ ννν, λ°λ μ½λ μ½μ λ° λ¬Έμμ΄ μνΈνκ° ν¬ν¨λ μ μμ΅λλ€. μ μ λΆμ λꡬλ νλ‘κ·Έλ¨μ μ½λ ꡬ쑰, λ¬Έμμ΄ μ¬μ©λ λ° API νΈμΆμ λΆμνμ¬ μ΄λ¬ν κΈ°λ²μ μλ³ν μ μμ΅λλ€. λΉμ μμ μΈ μ½λ ν¨ν΄, μνΈνλ λ¬Έμμ΄ λλ μ§§μ μ½λ 곡κ°μμ λ§μ μμ API νΈμΆμ μ‘΄μ¬λ ν¨μ»€ λλ λλ νκ° μ¬μ© μ€μμ μμν μ μμ΅λλ€.
μ: μμΆλκ±°λ μνΈνλ λ§μ μμ μ½λλ₯Ό μμΆ ν΄μ ν λ€μ μ€ννλ μλμ μ½λκ° ν¬ν¨λ νλ‘κ·Έλ¨μ ν¨νΉλ μ€ν νμΌμ κ³ μ μ μΈ μμ λλ€. λ¬Έμμ΄ λΆμμ λ°νμ μ λμ€μ ν΄λ λλ μνΈνλ λ¬Έμμ΄μ λνλΌ μ μμ΅λλ€.
6. ν΄λ¦¬μ€ν± λΆμ
ν΄λ¦¬μ€ν± λΆμμ μλ €μ§ μ μ± λμμ κΈ°λ°μΌλ‘ νλ κ·μΉ λλ μλͺ μ μ¬μ©νμ¬ μ μ¬μ μΌλ‘ μ μ± μ½λλ₯Ό μλ³νλ κ²μ ν¬ν¨ν©λλ€. μ΄λ¬ν κ·μΉ λλ μλͺ μ API νΈμΆ μνμ€, λ¬Έμμ΄ ν¨ν΄ λ° μ½λ ꡬ쑰μ κ°μ λ€μν νΉμ±μ κΈ°λ°μΌλ‘ ν μ μμ΅λλ€. ν΄λ¦¬μ€ν± λΆμμ νμ§μ¨μ λμ΄κΈ° μν΄ λ€λ₯Έ μ μ λΆμ κΈ°λ²κ³Ό ν¨κ» μ¬μ©λλ κ²½μ°κ° λ§μ΅λλ€.
ν΄λ¦¬μ€ν± κ·μΉμ 보μ μ°κ΅¬μμ΄ μλμΌλ‘ κ°λ°νκ±°λ κΈ°κ³ νμ΅ μκ³ λ¦¬μ¦μ μν΄ μλμΌλ‘ κ°λ°ν μ μμ΅λλ€. κ·Έλ° λ€μ μ΄λ¬ν κ·μΉμ μ μ¬μ μΈ μνμ μλ³νκΈ° μν΄ νλ‘κ·Έλ¨μ μ½λμ μ μ©λ©λλ€. ν΄λ¦¬μ€ν± λΆμμ μ΄μ μ λ³Έ μ μ΄ μλλΌλ μμ¬μ€λ¬μ΄ λμμ μλ³ν μ μμΌλ―λ‘ μλ‘μ΄ λλ μλ €μ§μ§ μμ μ μ±μ½λ λ³μ’ μ νμ§νλ λ° μμ£Ό μ¬μ©λ©λλ€. YARA(Yet Another Rule Engine)μ κ°μ λꡬλ ν΄λ¦¬μ€ν± κ·μΉμ λ§λ€κ³ μ μ©νλ λ° μΌλ°μ μΌλ‘ μ¬μ©λ©λλ€. μλ₯Ό λ€μ΄ YARA κ·μΉμ νμΌ μνΈν λλ λ μ§μ€νΈλ¦¬ μμ κ³Ό κ΄λ ¨λ νΉμ API νΈμΆ μνμ€λ₯Ό κ²μνκ±°λ νΉμ μ μ±μ½λ ν¨λ°λ¦¬μ κ΄λ ¨λ νΉμ λ¬Έμμ΄μ μλ³ν μ μμ΅λλ€.
μ: ν΄λ¦¬μ€ν± κ·μΉμ `VirtualAlloc`, `WriteProcessMemory` λ° `CreateRemoteThread` APIλ₯Ό μμ£Ό μ¬μ©νλ νλ‘κ·Έλ¨μ νλκ·Έν μ μμ΅λλ€. μ΄ μνμ€λ μ’ μ’ μ μ±μ½λκ° λ€λ₯Έ νλ‘μΈμ€μ μ½λλ₯Ό μ½μ νλ λ° μ¬μ©λκΈ° λλ¬Έμ λλ€. λμΌν λ°©λ²μΌλ‘ νΉμ νμΌ νμ₯μ(μ: .exe, .dll)λ₯Ό ν¬ν¨νλ λ¬Έμμ΄μ μ μ©νμ¬ μ μ¬μ μΈ μ μ±μ½λλ₯Ό μλ³ν μ μμ΅λλ€.
μ μ λΆμ λꡬ
μ μ λΆμμ μ§μνλ μ¬λ¬ λꡬλ₯Ό μ¬μ©ν μ μμ΅λλ€. μ΄λ¬ν λꡬλ λΆμ νλ‘μΈμ€μ λ€μν μΈ‘λ©΄μ μλννμ¬ λ³΄λ€ ν¨μ¨μ μ΄κ³ ν¨κ³Όμ μΌλ‘ λ§λ€ μ μμ΅λλ€.
- λμ€μ΄μ λΈλ¬/λμ»΄νμΌλ¬: IDA Pro, Ghidra λ° Binary Ninjaμ κ°μ λꡬλ μ½λλ₯Ό λμ€μ΄μ λΈνκ³ λμ»΄νμΌνλ λ° νμμ μ λλ€. λΆμκ°κ° νλ‘κ·Έλ¨μ λͺ λ Ήμ΄λ₯Ό λ³΄κ³ μ μμ€ μμ μ μ΄ν΄ν μ μλλ‘ ν©λλ€.
- λλ²κ±°: μ£Όλ‘ λμ λΆμμ μ¬μ©λμ§λ§ x64dbgμ κ°μ λλ²κ±°λ λμ λΆμμ λͺ¨λ μ΄μ μ μ 곡νμ§λ μμ§λ§ νλ‘κ·Έλ¨μ μ½λμ λ°μ΄ν°λ₯Ό κ²μ¬νκΈ° μν΄ μ μ 컨ν μ€νΈμμ μ¬μ©ν μ μμ΅λλ€.
- λ¬Έμμ΄ λΆμ λꡬ: λ¬Έμμ΄(νμ€ Unix/Linux μ νΈλ¦¬ν°) λ° νΉμ μ€ν¬λ¦½νΈμ κ°μ λꡬλ₯Ό μ¬μ©νμ¬ νλ‘κ·Έλ¨ μ½λ λ΄μμ λ¬Έμμ΄μ μΆμΆνκ³ λΆμν μ μμ΅λλ€.
- ν₯μ€ νΈμ§κΈ°: HxD λλ 010 Editorμ κ°μ ν₯μ€ νΈμ§κΈ°λ νλ‘κ·Έλ¨μ μ΄μ§ λ°μ΄ν°μ λν μ μμ€ λ³΄κΈ°λ₯Ό μ 곡νμ¬ λΆμκ°κ° μ½λμ λ°μ΄ν°λ₯Ό μμΈν κ²μ¬ν μ μλλ‘ ν©λλ€.
- YARA: YARAλ μ½λ ν¨ν΄, λ¬Έμμ΄ λ° κΈ°ν νΉμ±μ κΈ°λ°μΌλ‘ μ μ±μ½λλ₯Ό μλ³νκΈ° μν΄ ν΄λ¦¬μ€ν± κ·μΉμ λ§λ€κ³ μ μ©νλ κ°λ ₯ν λꡬμ λλ€.
- PEview: PEviewλ Windowsμ νμ€ μ€ν νμΌ νμμΈ Portable Executable(PE) νμΌμ ꡬ쑰λ₯Ό κ²μ¬νλ λꡬμ λλ€.
μ μ λΆμμ μ₯μ
μ μ λΆμμ λμ λΆμμ λΉν΄ μ¬λ¬ κ°μ§ μ₯μ μ΄ μμ΅λλ€.
- μ‘°κΈ° νμ§: μ μ λΆμμ μ μ±μ½λκ° μ€νλκΈ° μ μ μ μ¬μ μΈ μνμ μλ³νμ¬ μμμ΄ λ°μνμ§ μλλ‘ λ°©μ§ν μ μμ΅λλ€.
- μ€ν λΆνμ: μ μ λΆμμ νλ‘κ·Έλ¨μ μ€ννμ§ μμΌλ―λ‘ μμ νκ³ λΆμκ°λ μμ€ν μ μνμ λ ΈμΆμν€μ§ μμ΅λλ€.
- ν¬κ΄μ μΈ μ 보: μ μ λΆμμ νλ‘κ·Έλ¨μ λ΄λΆ μλμ λν μμΈν μ 보λ₯Ό μ 곡ν μ μμΌλ©°, μ΄λ 리λ²μ€ μμ§λμ΄λ§ λ° μ¬κ³ λμμ λ§€μ° μ€μν©λλ€.
- νμ₯μ±: μ μ λΆμμ μλνλμ΄ λ§μ μμ νμΌμ μ μ©ν μ μμΌλ―λ‘ λλμ λ°μ΄ν°λ₯Ό λΆμνλ λ° μ ν©ν©λλ€.
μ μ λΆμμ νκ³
μ₯μ μλ λΆκ΅¬νκ³ μ μ λΆμμλ νκ³λ μμ΅λλ€.
- μ½λ λλ ν: μ μ±μ½λ μμ±μλ μ½λλ₯Ό λΆμνκΈ° μ΄λ ΅κ² λ§λ€κΈ° μν΄ λλ ν κΈ°λ²μ μ¬μ©νλ κ²½μ°κ° λ§μΌλ©°, μ΄λ μ μ λΆμ λ Έλ ₯μ λ°©ν΄ν μ μμ΅λλ€.
- λΆμ λ°©μ§ κΈ°λ²: μ μ±μ½λλ μ μ λΆμ λꡬλ₯Ό νμ§νκ³ λ¬΄λ ₯ννλλ‘ μ€κ³λ λΆμ λ°©μ§ κΈ°λ²μ ν¬ν¨ν μ μμ΅λλ€.
- 컨ν μ€νΈ μ’ μμ±: μΌλΆ μ μ±μ½λ λμμ 컨ν μ€νΈ μ’ μμ μ΄λ©° μ€ν νκ²½μμ νλ‘κ·Έλ¨μ κ΄μ°°ν΄μΌλ§ μ΄ν΄ν μ μμ΅λλ€.
- μ€ν: μ μ λΆμμ λλλ‘ λ¬΄ν΄ν νλ‘κ·Έλ¨μ΄ μ μ±μ½λλ‘ μλͺ» μλ³λλ μ€νμ μμ±ν μ μμ΅λλ€.
- μκ° μλͺ¨μ : μ μ λΆμμ νΉν 볡μ‘ν νλ‘κ·Έλ¨μ κ²½μ°λ μ¬νκ² λλ νλ μ½λλ₯Ό λ€λ£° λ μκ°μ΄ λ§μ΄ 걸릴 μ μμ΅λλ€.
ν¨κ³Όμ μΈ μ μ λΆμμ μν λͺ¨λ² μ¬λ‘
μ μ λΆμμ ν¨κ³Όλ₯Ό κ·Ήλννλ €λ©΄ λ€μ λͺ¨λ² μ¬λ‘λ₯Ό κ³ λ €νμμμ€.
- κΈ°λ² μ‘°ν© μ¬μ©: νλ‘κ·Έλ¨μ λμμ λν ν¬κ΄μ μΈ μ΄ν΄λ₯Ό μ»κΈ° μν΄ μ¬λ¬ μ μ λΆμ κΈ°λ²μ κ²°ν©ν©λλ€.
- λΆμ μλν: μλνλ λꡬμ μ€ν¬λ¦½νΈλ₯Ό μ¬μ©νμ¬ λΆμ νλ‘μΈμ€λ₯Ό κ°μννκ³ λ§μ μμ νμΌμ λΆμν©λλ€.
- μ΅μ μ 보 μ μ§: μ΅μ μ μ±μ½λ μΆμΈ λ° λΆμ κΈ°λ²μ λν μ΅μ λꡬμ μ§μμ μ μ§ν©λλ€.
- κ²°κ³Ό λ¬Έμν: μ¬μ©λ κΈ°λ², μ»μ κ²°κ³Ό λ° λλ¬ν κ²°λ‘ μ ν¬ν¨νμ¬ κ²°κ³Όλ₯Ό μ² μ ν λ¬Έμνν©λλ€.
- μλλ°μ€ μ¬μ©: νλ‘κ·Έλ¨μ λμμ΄ μμ ν λͺ ννμ§ μμ κ²½μ° μλλ°μ€ νκ²½μμ λμ λΆμμ μ¬μ©νμ¬ λ°νμ λμμ κ΄μ°°νκ³ μ μ λΆμ κ²°κ³Όλ₯Ό 보μν©λλ€.
- μ¬λ¬ λκ΅¬λ‘ λΆμ: μ¬λ¬ λꡬλ₯Ό μ¬μ©νμ¬ κ²°κ³Όλ₯Ό κ΅μ°¨ κ²μ¦νκ³ μ νμ±μ νμΈν©λλ€.
μ μ λΆμμ λ―Έλ
μ μ λΆμμ μ§ννλ λΆμΌμ΄λ©° μλ‘μ΄ κΈ°λ²κ³Ό κΈ°μ μ΄ μ§μμ μΌλ‘ κ°λ°λκ³ μμ΅λλ€. λ¨Έμ λ¬λκ³Ό μΈκ³΅ μ§λ₯(AI)μ ν΅ν©μ μ λ§ν λΆμΌ μ€ νλμ λλ€. AI κΈ°λ° λꡬλ μ½λ ν¨ν΄ μλ³, μ μ±μ½λ ν¨λ°λ¦¬ λΆλ₯, λ―Έλ μν μμΈ‘κ³Ό κ°μ μ μ λΆμμ λ§μ μΈ‘λ©΄μ μλνν μ μμ΅λλ€. μΆκ°μ μΈ λ°μ μ κ³ λλ‘ λλ νλ μ μ±μ½λμ νμ§λ₯Ό κ°μ νκ³ λΆμ μλμ ν¨μ¨μ±μ ν₯μμν€λ λ° μ€μ μ λ κ²μ λλ€.
κ²°λ‘
μ μ λΆμμ ν¬κ΄μ μΈ μ μ±μ½λ νμ§ μ λ΅μ μ€μν κ΅¬μ± μμμ λλ€. μ¬μ΄λ² 보μ μ λ¬Έκ°μ λ§€λμλ μ μ λΆμμ κΈ°λ², λꡬ, μ₯μ λ° μ ν μ¬νμ μ΄ν΄ν¨μΌλ‘μ¨ μ μ± μννΈμ¨μ΄λ‘ μΈν μνμ ν¨κ³Όμ μΌλ‘ μλ³νκ³ μνν μ μμ΅λλ€. μ μ±μ½λκ° κ³μ μ§νν¨μ λ°λΌ λμ§νΈ μμ°μ 보νΈνκ³ μ μΈκ³μ μΌλ‘ μμ ν μ¨λΌμΈ νκ²½μ 보μ₯νλ €λ©΄ μ μ λΆμ κΈ°λ²μ μλ¬νλ κ²μ΄ μ€μν©λλ€. μ μλ μ 보λ μ μ±μ½λμμ μΈμμμ μ μ λΆμ κΈ°λ²μ μ΄ν΄νκ³ νμ©νκΈ° μν κ²¬κ³ ν κΈ°λ°μ μ 곡ν©λλ€. λμμλ νμ΅κ³Ό μ μμ λμμμ΄ λ³ννλ μ΄ νκ²½μμ λ§€μ° μ€μν©λλ€.